package com.zhongwang.business.constant;

import java.util.HashMap;
import java.util.Map;
import java.util.regex.Pattern;

/**
 *  系统常量
 *
 * @author China.sgl
 * @date 2019/9/15 09:12
 */
public interface Constant {

    /** 前缀 */
    String PREFIX = "/";

    /** 批量执行数量 */
    int BATCH_COUNT = 1000;

    /** 请求头 accept */
    String HEAD_ACCEPT = "accept";

    /** 请求头中 X-Requested-With */
    String HEAD_X = "X-Requested-With";

    /** 请求头中的 X-Requested-With 的值为 XMLHttpRequest ，则为Ajax请求 */
    String HEAD_X_XML = "XMLHttpRequest";

    /** enctype */
    String CONTENT_TYPE_JSON = "application/json";
    String CONTENT_TYPE_MULTIPART = "multipart/form-data";
    String CONTENT_TYPE_URLENCODED = "application/x-www-form-urlencoded";

    /** xml */
    String PATTERN_XML = "xml";
    /** xml 后缀 */
    String SUFFIX_XML= ".xml";
    /** json */
    String PATTERN_JSON = "json";
    /** json 后缀 */
    String SUFFIX_JSON = ".json";
    /** 空字符串 */
    String EMPTY_STRING = "";
    /** 下划线 */
    String UNDER_LINE = "_";
    /** 点 */
    String SEPARATOR_POINT = ".";
    /** 逗号 */
    String SEPARATOR_COMMA = ",";
    /** 页码 */
    String PAGE_NUM = "pageNum";
    /** 每页显示记录数 */
    String PAGE_SIZE = "pageSize";
    /** 排序列 */
    String ORDER_BY_COLUMN = "orderByColumn";
    /** 排序的方向 "desc" 或者 "asc". */
    String IS_ASC = "isAsc";
    /** 授权缓存名 */
    String AUTHORIZATION_CACHE = "authorizationCache";
    /** 管理员 */
    String MANAGER = "admin";
    /** 用户缓存 */
    String SYS_USER_CACHE = "systemUserCache";

    int THEFIRST_PROCESS_TASK_TEMP_ID = 2;
    int THESECOND_PROCESS_TASK_TEMP_ID = 3;

    int TASK_STATUS_NOT_BEGIN = 1;
    int TASK_STATUS_EXECATE = 2;
    int TASK_STATUS_COMPLETED = 3;

    int STATUS_NORMAL = 1;
    int STATUS_DELETE = 0;

    int MESSAGE_TYPE_INTERACTIVE = 1;
    int MESSAGE_TYPE_SEND = 2;
    int MESSAGE_TYPE_CHANGE = 3;

    int FACTORY_FIVE_ID = 5;
    /**单据类型，1、采购入库，2、退料入库，3、调拨入库，4、领料出库，5、调拨出库，6、退货出库，7、发货出库，8、生产入库**/
    String[] ORDERTYPE={"全部","采购入库","退料入库","调拨入库","领料出库","调拨出库","退货出库","发货出库","生产入库"};

    Pattern USER_PATTERN = Pattern.compile("@(\\S*)\\s+?");

    Map<String, String> FIELD_NAME = new HashMap<String, String>() {{
        // 提报计划
        put("rppMatDesc", "物料描述");
        put("rppNum", "数量");
        put("rppRealNum", "实量");
        put("rppOverNum", "余量");
        put("rppUnit", "单位");
        put("rppStandardNo", "标准号");
        put("rppBrand", "品牌");
        put("rppRemark", "备注");
        put("rppDesigner", "联系人");
        put("rppPlanner", "计划员");
        put("rppTypes", "分类");
        put("rppPlanNo", "计划号");
        // 采购计划
        put("sppMatDesc", "物料描述");
        put("sppNum", "数量");
        put("sppUnit", "单位");
        put("sppStandardNo", "标准号");
        put("sppCategory", "类型");
        put("sppBrand", "品牌");
        put("sppRemark", "备注");
        put("sppDesigner", "联系人");
        put("sppBuyer", "业务员");
        put("sppPayCycle", "交货周期");
        put("sppProgress", "采购进度");
        put("sppSapCode", "sap物料编码");
        put("sppWhiId", "仓库字典表ID ");
        put("sppSupplier", "供应商 ");
    }};
//资料
//    客户端
//    404 -Not Found 代表客户端错误，指的是服务器端无法找到所请求的资源
//    400 -请求无效，服务器不理解请求的语法
//    403 - 禁止访问 ，服务器拒绝请求
//    405 - 资源被禁止，禁用请求中指定的方法
//    406 - 无法接受 ，无法使用请求的内容特性响应请求的网页
//    407 - 要求代理身份验证 ，此状态代码与 401（未授权）类似，但指定请求者应当授权使用代理
//    408 - 请求超时，服务器等候请求时发生超时
//    409 - 冲突，服务器在完成请求时发生冲突。 服务器必须在响应中包含有关冲突的信息
//    410 - 已删除，如果请求的资源已永久删除，服务器就会返回此响应。
//    411 - 需要有效长度， 服务器不接受不含有效内容长度标头字段的请求。
//    412 - 未满足前提条件， 服务器未满足请求者在请求中设置的其中一个前提条件。
//    413 - 请求实体过大，服务器无法处理请求，因为请求实体过大，超出服务器的处理能力。
//    414 - 请求的 URI 过长， 请求的 URI（通常为网址）过长，服务器无法处理。
//    415 - 不支持的媒体类型， 请求的格式不受请求页面的支持。
//    416 - 请求范围不符合要求，如果页面无法提供请求的范围，则服务器会返回此状态代码。
//    417 - 未满足期望值，服务器未满足”期望”请求标头字段的要求
//    500 - 内部服务器错误，无法完成请求
//    501 - 未实现 ，服务器不具备完成请求的功能。 例如，服务器无法识别请求方法时可能会返回此代码
//    502 - 网关错误 ，服务器作为网关或代理，从上游服务器收到无效响应
//    503 - 服务不可用，服务器目前无法使用，通常，这只是暂时状态
//    504 - 网关超时， 服务器作为网关或代理，但是没有及时从上游服务器收到请求
//    505 - HTTP 版本不受支持， 服务器不支持请求中所用的 HTTP 协议版本
//
//    服务端
//    2xx - 客户端请求已成功。  
//    200 - 服务器已成功处理了请求。 通常，这表示服务器提供了请求的网页
//    201 - 已创建，请求成功并且服务器创建了新的资源
//    202 - 已接受，但尚未处理
//    203 - 非权威性信息，服务器已成功处理了请求，但返回的信息可能来自另一来源
//    204 - 无内容，服务器成功处理了请求，但没有返回任何内容
//    205 - 重置内容，服务器成功处理了请求，但没有返回任何内容
//    206 - 部分内容，服务器成功处理了部分 GET 请求
//    3xx - 重定向  
//    302 - 对象已移动
//    304 - 未修改
//    307 - 临时重定向

    String GROUP_MALTYPE = "物料类型";
    String GROUP_ASSTYPE = "外协类型";
    String GROUP_REPTYPE = "提报单类型";
    String GROUP_POST = "审核级别";
    String GROUP_CHANGE_REASON = "变更原因";
    String GROUP_QUALITY = "材质";
    String GROUP_TASKTYPE = "任务类型";
    String GROUP_SPECTYPE = "专业类型";
    String GROUP_PERSONTYPE = "人员类型";
    String GROUP_MAKETYPE = "制作件类型";
    String GROUP_WEIGHTTYPE = "重量类别";
    String GROUP_HOURTYPE = "工时类别";
    String GROUP_AUXMATTYPE = "主要辅材";




}
